!function(a) {
    var b, c, d;
    "undefined" != typeof a.browser && a.browser || (b = {}, a.extend(b)), c = {
        flash: {
            activex: [ "ShockwaveFlash.ShockwaveFlash", "ShockwaveFlash.ShockwaveFlash.3", "ShockwaveFlash.ShockwaveFlash.4", "ShockwaveFlash.ShockwaveFlash.5", "ShockwaveFlash.ShockwaveFlash.6", "ShockwaveFlash.ShockwaveFlash.7" ],
            plugin: /flash/gim
        },
        sl: {
            activex: [ "AgControl.AgControl" ],
            plugin: /silverlight/gim
        },
        pdf: {
            activex: [ "acroPDF.PDF.1", "PDF.PdfCtrl.1", "PDF.PdfCtrl.4", "PDF.PdfCtrl.5", "PDF.PdfCtrl.6" ],
            plugin: /adobe\s?acrobat/gim
        },
        qtime: {
            activex: [ "QuickTime.QuickTime", "QuickTimeCheckObject.QuickTimeCheck.1", "QuickTime.QuickTime.4" ],
            plugin: /quicktime/gim
        },
        wmp: {
            activex: [ "WMPlayer.OCX", "MediaPlayer.MediaPlayer.1" ],
            plugin: /(windows\smedia)|(Microsoft)/gim
        },
        shk: {
            activex: [ "SWCtl.SWCtl", "SWCt1.SWCt1.7", "SWCt1.SWCt1.8", "SWCt1.SWCt1.9", "ShockwaveFlash.ShockwaveFlash.1" ],
            plugin: /shockwave/gim
        },
        rp: {
            activex: [ "RealPlayer", "rmocx.RealPlayer G2 Control.1" ],
            plugin: /realplayer/gim
        }
    }, d = function(b) {
        if (window.ActiveXObject) for (a.browser[b] = !1, i = 0; i < c[b].activex.length; i++) try {
            new ActiveXObject(c[b].activex[i]), a.browser[b] = !0;
        } catch (d) {} else a.each(navigator.plugins, function() {
            return this.name.match(c[b].plugin) ? (a.browser[b] = !0, !1) : (a.browser[b] = !1, 
            void 0);
        });
    }, a.each(c, function(a) {
        d(a);
    });
}(jQuery);